package org.crazyit.activiti_d2._4_Schema;

import org.activiti.engine.ProcessEngine;
import org.activiti.engine.ProcessEngineConfiguration;

public class SchemaUpdate_CreateDrop {

    public static void main(String[] args) {

        //1. 读取schemaUpdate-false.xml 文件, 并创建流程引擎配置实例
        ProcessEngineConfiguration config = ProcessEngineConfiguration.createProcessEngineConfigurationFromResource("schemaUpdate-createdrop.xml");

        //2. 启动Activiti
        /*
            因为流程引擎的databaseSchemaUpdate 属性值为create-drop, 在XML 中配置的数据库不存在数据表, 所以会在Activiti 引擎启动时自动创建
            如果数据表已经存在, 则抛出异常并停止创建流程引擎
         */
        ProcessEngine engine = config.buildProcessEngine();

        //3. 关闭Activiti
        //因为流程引擎的databaseSchemaUpdate 属性值为create-drop, 在XML 中配置的数据库已经存在数据表, 所以会在Activiti 引擎关闭时自动删除
        engine.close();

    }

}
